home *** CD-ROM | disk | FTP | other *** search
/ Aminet 34 / Aminet 34 (2000)(Schatztruhe)[!][Dec 1999].iso / Aminet / gfx / edit / VE-VTexture2.lha / arexx / VisualTexture2.rexx < prev   
OS/2 REXX Batch file  |  1999-10-14  |  3KB  |  182 lines

  1. /*
  2.  
  3.    v1.00 Visual Texture 2
  4.  
  5.    Marko Seppänen
  6.    marko.seppanen@wwnet.fi
  7.  
  8. */
  9.  
  10.  
  11. address IMAGEENGINEER
  12.  
  13. Options results
  14. signal on error            /* Setup a place for errors to go */
  15.  
  16. if arg()=0 then exit
  17. x=arg(1)
  18. parse var x texture smoothness conv reflect method .
  19.  
  20.  
  21.  
  22. if smoothness="" then do
  23.  
  24.   if exists("ie:prefs/visualtexture2.cfg") == "1" then
  25.     do
  26.       call open("temp","ie:prefs/visualtexture2.cfg","R")
  27.       values=readln("temp")
  28.       parse var values ok smoothness conv reflect method .
  29.       call close("temp")
  30.     end
  31.   else
  32.     do
  33.       smoothness=0
  34.       conv=1
  35.       reflect=0
  36.       method=0
  37.     end
  38.  
  39.   'FORM "Visual Texture 2" "Use|Cancel"',
  40.   'CYCLE,"Starting smoothness","None|Gaussian|Lowpass|Median",'smoothness'',
  41.   'CYCLE,"Style","None|1|2|3|4|5",'conv'',
  42.   'CYCLE,"Reflection","No|Yes",'reflect'',
  43.   'CYCLE,"Type","Shiny|Dark|Faded",'method''
  44.  
  45.   values=result
  46.   parse var values ok smoothness conv reflect method .
  47.  
  48.   if ok = 0 then exit
  49.  
  50.   call open("temp","ie:prefs/visualtexture2.cfg","W")
  51.   res=writeln("temp",values)
  52.   call close("temp")
  53.  
  54. end
  55.  
  56.  
  57.  
  58.  
  59.  
  60. /* STARTING SMOOTHNESS */
  61.  
  62. select
  63.  
  64.    when smoothness == "1" | upper(smoothness) == "GAUSSIAN" then do
  65.     CONVOLVE texture "IE:Convolves/GaussianBlur5x5"
  66.     smooth=result
  67.   end
  68.  
  69.   when smoothness == "2" | upper(smoothness) == "LOWPASS" then do
  70.     LOWPASS texture 15 15
  71.     smooth=result
  72.   end
  73.  
  74.   when smoothness == "3" | upper(smoothness) == "MEDIAN" then do
  75.     MEDIAN texture 7 7
  76.     smooth=result
  77.   end
  78.  
  79. otherwise smooth=texture
  80. end
  81.  
  82.  
  83.  
  84.  
  85.  
  86. CONVERT_TO_GREY smooth
  87. greytexture=result
  88.  
  89. if smoothness ~== "0" & upper(smoothness) ~== "NONE" then CLOSE smooth
  90.  
  91.  
  92.  
  93.  
  94.  
  95. /* CONVOLVE */
  96.  
  97. select
  98.  
  99.   when conv == 1  then convolvetype="Line_Detect_Verti"
  100.   when conv == 2  then convolvetype="Reflect_SouthEast"
  101.   when conv == 3  then convolvetype="ColourFragment_Black"
  102.   when conv == 4  then convolvetype="Crayon"
  103.   when conv == 5  then convolvetype="SmoothEdge_Low"
  104.  
  105. otherwise noconvolve=1
  106. end
  107.  
  108.  
  109. if noconvolve ~== "1" then do
  110.  
  111.   if exists("ie:convolves/"convolvetype) == "0" then do
  112.     'REQUEST "Please install latest version of Image Engineer!" "OK"'
  113.     exit
  114.   end
  115.  
  116.   CONVOLVE greytexture "IE:Convolves/"convolvetype
  117.   convolved=result
  118.  
  119.   CLOSE greytexture
  120.  
  121. end
  122. else convolved=greytexture
  123.  
  124.  
  125.  
  126.  
  127.  
  128. /* REFLECTION */
  129.  
  130. if reflect == "1" | upper(reflect) == "YES" then do
  131.  
  132.   REFLECT_X convolved
  133.   xreflected=result
  134.  
  135.   CLOSE convolved
  136.  
  137.   REFLECT_Y xreflected
  138.   greytexture=result
  139.  
  140.   CLOSE xreflected
  141.  
  142. end
  143. else greytexture=convolved
  144.  
  145.  
  146.  
  147.  
  148.  
  149. /* COMPOSITE METHOD */
  150.  
  151. if method == "0" | upper(method) == "SHINY" then compositemethod="ADD"
  152. if method == "1" | upper(method) == "DARK" then compositemethod="MIN"
  153. if method == "2" | upper(method) == "FADED" then compositemethod="MIX 80"
  154.  
  155. MARK greytexture PRIMARY
  156. MARK texture SECONDARY
  157. COMPOSITE 0 0 compositemethod
  158. finaltexture=result
  159.  
  160. CLOSE greytexture
  161.  
  162.  
  163. exit
  164.  
  165. /*******************************************************************/
  166. /* This is where control goes when an error code is returned by IE */
  167. /* It puts up a message saying what happened and on which line     */
  168. /*******************************************************************/
  169. error:
  170. if RC=5 then do            /* Did the user just cancel us? */
  171.     IE_TO_FRONT
  172.     LAST_ERROR
  173.     'REQUEST "'||RESULT||'"'
  174.     exit
  175. end
  176. else do
  177.     IE_TO_FRONT
  178.     LAST_ERROR
  179.     'REQUEST "Error detected!!!'||D2C(10)||'Image Engineer error message is as follows'||D2C(10)||result||D2C(10)||'Script failed on line '||SIGL||'"' 'Doh!'
  180.     exit
  181. end
  182.